showing 3 games
name | publisher(developer) | year arrow_downward | description | |
---|---|---|---|---|
Star Wars | Custom Software Group | ? | [spoiler=open;close]10 REM ---DESIGNED TO RUN ON HEATH H19/H89--- 900 WIDTH 80 1000 LET E$=CHR$(27):PRINT E$;"F";E$;"E";E$;"x5";E$;"Y#'"; 1010 PRINT TAB(18);E$;"F";"faaqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaac" 1020 PRINT TAB(18);"`";SPC(43);"`" 1030 PRINT TAB(18);"` 'S T A R W A R S' `" 1040 PRINT TAB(18);"`";SPC(43);"`" 1050 PRINT TAB(18);"`";E$;"G";" This program presented courtesy of "; 1060 PRINT E$;"F";"`" 1070 PRINT TAB(18);"`";SPC(43);"`" 1080 PRINT TAB(18);"`";E$;"p";" C U S T O M S O F T W A R E G R O U P "; 1090 PRINT E$;"q";"`" 1100 PRINT TAB(18);"`";SPC(43);"`" 1110 PRINT TAB(18);"`";E$;"G";" Specializing in custom programming for "; 1120 PRINT E$"F";"`" 1130 PRINT TAB(18);"` HEATH/ZENITH DATA SYSTEMS `" 1140 PRINT TAB(18);"`";SPC(43);"`" 1150 PRINT TAB(18);"` CUSTOM SOFTWARE GROUP `" 1160 PRINT TAB(18);"` POST OFFICE BOX `" 1170 PRINT TAB(18);"` BELLEVUE, NE 68005 `" 1180 PRINT TAB(18);"` PHONE 291-4622 `" 1190 PRINT TAB(18);"` 291-5819 `" 1200 PRINT TAB(18);"`";SPC(43);"`" 1210 PRINT TAB(18);"eaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaad";E$;"G" 1220 PRINT TAB(28);"PRESS RETURN TO CONTINUE" 1230 A$=INPUT$(1) 1240 PRINT CHR$(27);"G";CHR$(27);"w" 1250 CLEAR 1000 1260 PRINT CHR$(27);"E";CHR$(27);"Y! ";CHR$(27);"x5" 1270 PRINT ," ******** ********** ****** *********" 1280 PRINT ," ** ** ** ** ** ** **" 1290 PRINT ," ** ** ** ** ** **" 1300 PRINT ," ******** ** ********** *********" 1310 PRINT ," ** ** ** ** ** **" 1320 PRINT ," ** ** ** ** ** ** **" 1330 PRINT ," ******** ** ** ** ** **" 1340 PRINT:PRINT 1350 PRINT ," ** ** ****** ********* ********" 1360 PRINT ," ** ** ** ** ** ** ** **" 1370 PRINT ," ** ** ** ** ** ** **" 1380 PRINT ," ** ** ** ********** ********* ********" 1390 PRINT ," ** ** ** ** ** ** ** **" 1400 PRINT ," ******** ** ** ** ** ** **" 1410 PRINT ," ** ** ** ** ** ** ********" 1420 FOR I=1 TO 1000:NEXT I 1430 PRINT CHR$(27);"Y7 " 1440 PRINT ,"A LONG TIME AGO IN A GALAXY FAR, FAR AWAY, A GREAT" 1450 FOR I=1 TO 1000:NEXT I:PRINT 1460 PRINT ,"ADVENTURE TOOK PLACE. IT IS A PERIOD OF CIVIL WAR." 1470 FOR I=1 TO 1000:NEXT I:PRINT 1480 PRINT ,"REBEL SPACE SHIPS STRIKING FROM A HIDDEN BASE HAVE" 1490 FOR I=1 TO 1000:NEXT I:PRINT 1500 PRINT ,"WON THEIR FIRST VICTORY AGAINST THE EVIL GALACTIC" 1510 FOR I=1 TO 1000:NEXT I:PRINT 1520 PRINT ,"EMPIRE. DURING THE BATTLE, REBEL SPYS MANAGED TO" 1530 FOR I=1 TO 1000:NEXT I:PRINT 1540 PRINT ,"STEAL SECRET PLANS TO THE EMPIRE'S ULITMATE WEAPON" 1550 FOR I=1 TO 1000:NEXT I:PRINT 1560 PRINT ,"THE DEATH STAR, AN ARMOURED SPACE STATION WITH THE" 1570 FOR I=1 TO 1000:NEXT I:PRINT 1580 PRINT ,"FIRE POWER TO DESTROY AN ENTIRE PLANET. " 1590 FOR I=1 TO 1000:NEXT I:PRINT:PRINT 1600 PRINT ," YOUR MISSION AS ONE OF THE REBEL PILOTS IS TO" 1610 FOR I=1 TO 1000:NEXT I:PRINT 1620 PRINT ,"ATTACK AND DESTROY THE 'DEATH STAR'. WHILE MAKING" 1630 FOR I=1 TO 1000:NEXT I:PRINT 1640 PRINT ,"YOUR ATTACK YOU HAVE ENCOUNTERED 'DARTH VADER' AND" 1650 FOR I=1 TO 1000:NEXT I:PRINT 1660 PRINT ,"HIS IMPERIAL STORM TROOPERS IN THEIR TIE FIGHTERS." 1670 FOR I=1 TO 1000:NEXT I:PRINT 1680 PRINT ,"YOU MUST DESTROY THEM BEFORE THEY CAN DESTROY YOU." 1690 FOR I=1 TO 1000:NEXT I:PRINT:PRINT 1700 PRINT ," GOOD LUCK AND MAY THE 'FORCE' BE WITH YOU " 1710 FOR I=1 TO 2000:NEXT I 1720 REM 1730 REM .........................INSTRUCTIONS ROUTINE....................... 1740 REM 1750 PRINT CHR$(27);"E";CHR$(27);"Y*6";"DO YOU NEED:":PRINT 1760 PRINT TAB(30);"FULL INSTRUCTIONS <F>?" 1770 PRINT TAB(30);"BRIEF INSTRUCTIONS [b]?" 1780 PRINT TAB(30);"NO INSTRUCTIOnS <N>?" 1790 A$=INPUT$(1):IF A$="F" THEN 1870 1800 IF A$="B" THEN 2270 1810 IF A$="N" THEN 1820 ELSE 1790 1820 PRINT:PRINT TAB(29);"WHAT IS YOUR SKILL RATING?" 1830 A$=INPUT$(1):IF A$<"1" OR A$>"9" THEN 1850 1840 LET A$=A$+"0":LET A9=CVI(A$):LET A9=A9-12336:GOTO 2540 1850 PRINT:PRINT TAB(26);"EVIDENTLY YOU NEED INSTRUCTIONS!" 1860 FOR I=1 TO 500:NEXT I:PRINT 1870 PRINT CHR$(27);"E";CHR$(27);"Y! " 1880 PRINT "YOU HAVE BEEN EQUIPPED WITH AN X-WING "; 1890 PRINT " AS IN A REAL DOG-FIGHT YOU MUST LEAD" 1900 PRINT "FIGHTER BY THE REBEL ALLIANCE. YOUR "; 1910 PRINT " THE TARGET WHEN FIRING YOUR LASER. IF" 1920 PRINT "FIGHTER IS COMPUTER CONTROLLED BY THE "; 1930 PRINT " YOU WAIT UNTIL HE IS EXACTLY CENTERED" 1940 PRINT "NUMERIC KEYPAD ON YOUR KEY BOARD. THE "; 1950 PRINT " TO FIRE, THEN YOU WILL MISS HIM. YOU" 1960 PRINT "DISPLAY YOU WILL SEE IS YOUR ONBOARD "; 1970 PRINT " MAY CONTINUE TO FIRE AT HIM, BUT WHEN" 1980 PRINT "SCANNER. IN ORDER TO KILL AN ENEMY "; 1990 PRINT " YOU ARE FIRING YOUR WEAPON, YOUR CON-" 2000 PRINT "FIGHTER HE MUST RECEIVE A DIRECT HIT "; 2010 PRINT " TROL OF DIRECTION IS NOT AS GOOD AS" 2020 PRINT "OR MULTIPLE DAMAGING HITS. HE WILL "; 2030 PRINT " WHEN YOU AREN'T FIRING AND THE TARGET" 2040 PRINT "RECEIVE DAMAGE IF HIT WHEN HE IS +/- "; 2050 PRINT " MAY FLY OUT OF YOUR SIGHTS. " 2060 PRINT "10 DEGREES IN ELEVATION AND HE IS +/- "; 2070 PRINT " " 2080 PRINT "9 DEGREES IN BEARING. IN ADDITION TO "; 2090 PRINT " IN ORDER TO CENTER YOUR TARGET ON THE" 2100 PRINT "THIS HE MUST BE WITHIN 6500 KMS. "; 2110 PRINT " SCANNER YOU MUST FLY TOWARDS HIM. TO" 2120 PRINT " "; 2130 PRINT " TO DO THIS YOU PRESS THE KEY ON THE" 2140 PRINT "WARNING: THE 'TIE' FIGHTER HAS THE "; 2150 PRINT " NUMERIC KEY PAD THAT IS IN HIS DIREC-" 2160 PRINT "CAPABILITY TO POP IN AND OUT OF HYP- "; 2170 PRINT " TION. IE: IF HE IS IN THE UPPER-RIGHT" 2180 PRINT "ERSPACE. THEREFORE HE MAY DISAPPEAR "; 2190 PRINT " QUADRANT YOU WOULD PRESS KEY 9 TO FLY" 2200 PRINT "RIGHT FROM BEFORE YOUR SIGHTS. "; 2210 PRINT " TOWARDS HIM. IF HE IS BELOW, PRESS 2." 2220 PRINT " "; 2230 PRINT " " 2240 PRINT " MAY THE FORCE BE WITH YOU "; 2250 PRINT " PRESS RETURN TO CONT "; 2260 LINE INPUT A$ 2270 PRINT CHR$(27);"E" 2280 PRINT CHR$(27);"F"; 2290 PRINT ," UP & UP UP &" 2300 PRINT ," LEFT faaaaac faaaaac faaaaac RIGHT" 2310 PRINT ," ` 7 ` ` 8 ` ` 9 `" 2320 PRINT ," eaaaaad eaaaaad eaaaaad" 2330 PRINT ," faaaaac faaaaac faaaaac" 2340 PRINT ," LEFT ` 4 ` ` 5 ` ` 6 ` RIGHT" 2350 PRINT ," eaaaaad eaaaaad eaaaaad" 2360 PRINT ," faaaaac faaaaac faaaaac" 2370 PRINT ," ` 1 ` ` 2 ` ` 3 `" 2380 PRINT ," DOWN eaaaaad eaaaaad eaaaaad RIGHT" 2390 PRINT ," LEFT faaaaac DOWN DOWN" 2400 PRINT ," ` 0 `" 2410 PRINT ," eaaaaad" 2420 PRINT ," FIRE" 2430 PRINT CHR$(27);"G" 2440 PRINT TAB(18);"<<PRESS '5' TO STOP ANY TURNS OR CLIMBS.>>":PRINT 2450 PRINT TAB(23);"ENTER A SKILL RATING FROM 1 TO 9" 2460 PRINT TAB(27);"NOVICE.................1" 2470 PRINT TAB(27);"EXPERT.................9":PRINT 2480 PRINT "AFTER SCANNER CONSTRUCTION IS COMPLETE, PRESS ANY CONTROL KEY TO" 2485 PRINT "START YOUR SCAN" 2490 A$=INPUT$(1):IF A$<"1" OR A$>"9" THEN 2490 2500 LET A$=A$+"0":LET A9=CVI(A$):LET A9=A9-12336 2510 REM 2520 REM ......................GRID CONSTRUCTION ROUTINE.................... 2530 REM 2540 PRINT CHR$(27);"F";CHR$(27);"x1";CHR$(27);"x5":PRINT CHR$(27);"E"; 2550 PRINT TAB(16);"RANGE:g9999 KM ELEVATION:g90 DEG BEARING:g90 DEG" 2560 PRINT:ED=0 2570 PRINT TAB(8);"-90 -75 -60 -45 -30 -15 0 +15 +30 +45 +60 +75 +90" 2580 PRINT TAB(5);"+90 bssssbssssbssssbssssbssssbssssbssssbssssbssssbssssbssssbssssb +90" 2590 PRINT TAB(9);"v";SPC(59);"t":PRINT TAB(9);"v";SPC(59);"t" 2600 PRINT TAB(5);"+60 b";SPC(59);"b +60" 2610 PRINT TAB(9);"v";SPC(59);"t":PRINT TAB(9);"v";SPC(59);"t" 2620 PRINT TAB(5);"+30 b";SPC(59);"b +30" 2630 PRINT TAB(9);"v";SPC(59);"t":PRINT TAB(9);"v";SPC(59);"t" 2640 PRINT TAB(6);"0 b";SPC(59);"b 0" 2650 PRINT TAB(9);"v";SPC(59);"t":PRINT TAB(9);"v";SPC(59);"t" 2660 PRINT TAB(5);"-30 b";SPC(59);"b -30" 2670 PRINT TAB(9);"v";SPC(59);"t":PRINT TAB(9);"v";SPC(59);"t" 2680 PRINT TAB(5);"-60 v";SPC(59);"t -60" 2690 PRINT TAB(9);"v";SPC(59);"t":PRINT TAB(9);"v";SPC(59);"t" 2700 PRINT " -90 buuuubuuuubuuuubuuuubuuuubuuuubuuuubuuuubuuuubuuuubuuuubuuuub -90" 2710 PRINT " -90 -75 -60 -45 -30 -15 0 +15 +30 +45 +60 +75 +90" 2720 REM 2730 REM ......................INPUT CONTROL SCAN ROUTINE................... 2740 REM 2750 CD=200+INT(200*RND(1)):FL$="5" 2760 IF CT=CD THEN 3910 ELSE CT=CT+1 2770 IF FL$="0" THEN 2950 2780 IF INP(17)=48 AND FL$<>"0" THEN FL$=INPUT$(1) 2790 IF INP(17)=49 AND FL$<>"1" THEN FL$=INPUT$(1) 2800 IF INP(17)=50 AND FL$<>"2" THEN FL$=INPUT$(1) 2810 IF INP(17)=51 AND FL$<>"3" THEN FL$=INPUT$(1) 2820 IF INP(17)=52 AND FL$<>"4" THEN FL$=INPUT$(1) 2830 IF INP(17)=53 AND FL$<>"5" THEN FL$=INPUT$(1) 2840 IF INP(17)=54 AND FL$<>"6" THEN FL$=INPUT$(1) 2850 IF INP(17)=55 AND FL$<>"7" THEN FL$=INPUT$(1) 2860 IF INP(17)=56 AND FL$<>"8" THEN FL$=INPUT$(1) 2870 IF INP(17)=57 AND FL$<>"9" THEN FL$=INPUT$(1) 2880 IF INP(17)<48 OR INP(17)>57 AND DM$<>CHR$(INP(17)) THEN DM$=INPUT$(1) 2890 GOSUB 3340:REM ..FIGHTER UPDATE 2900 PRINT CHR$(27);"Y&3+";CHR$(27);"Y23+";CHR$(27);"Y)=+";CHR$(27);"Y/=+";CHR$(27);"Y,G+";CHR$(27);"Y)Q+";CHR$(27);"Y/Q+";CHR$(27);"Y&[+";CHR$(27);"Y2[+" 2910 GOTO 2760 2920 REM 2930 REM .......................FIRE WEAPON ROUTINE........................ 2940 REM 2950 FOR I=8 TO 1 STEP -1 2960 PRINT CHR$(27);"Y";CHR$(44+I);CHR$(71-I);"x" 2970 PRINT CHR$(27);"Y";CHR$(44+I);CHR$(71+I);"y" 2980 IF I > 6 THEN 3010 2990 PRINT CHR$(27);"Y";CHR$(46+I);CHR$(69-I);" " 3000 PRINT CHR$(27);"Y";CHR$(46+I);CHR$(73+I);" " 3010 NEXT I 3020 PRINT CHR$(27);"Y.E ";CHR$(27);"Y.I ";CHR$(27);"Y-F ";CHR$(27);"Y-H " 3030 IF FX<>44 OR FY<>70 THEN 3190 3040 IF KM>5000 THEN 2790 3050 PRINT CHR$(27);"p";CHR$(27);"Y8? ENEMY DESTROYED ":DG=0 3060 PRINT CHR$(27);"p":ED=ED+1 3070 PRINT CHR$(27);"Y";CHR$(FX-1);CHR$(FY);"ppp" 3080 PRINT CHR$(27);"Y";CHR$(FX);CHR$(FY-1);" " 3090 PRINT CHR$(27);"q";CHR$(27);"Y";CHR$(FX+1);CHR$(FY);"ppp" 3100 FOR I=1 TO 25:PRINT CHR$(7);:NEXT I 3110 PRINT CHR$(27);"Y";CHR$(FX);CHR$(FY);"iii" 3120 FOR I=1 TO 25: NEXT I 3130 PRINT CHR$(27);"Y";CHR$(FX-1);CHR$(FY);" " 3140 PRINT CHR$(27);"Y";CHR$(FX);CHR$(FY-1);" iii " 3150 PRINT CHR$(27);"Y";CHR$(FX+1);CHR$(FY);" " 3160 FOR I=1 TO 25: NEXT I 3170 PRINT CHR$(27);"Y";CHR$(FX);CHR$(FY);" " 3180 FQ=0:IF ED=5 THEN 3860 ELSE 2790 3190 IF FX<43 OR FX>45 THEN 3310 3200 IF FY<68 OR FY>72 THEN 3310 3210 LET DG=DG+1:IF DG=3 THEN 3050 3220 PRINT CHR$(27);"Y";CHR$(FX-1);CHR$(FY);"iii" 3230 PRINT CHR$(27);"Y";CHR$(FX);CHR$(FY-1);"i" 3240 PRINT CHR$(27);"Y";CHR$(FX);CHR$(FY+3);"i" 3250 PRINT CHR$(27);"Y";CHR$(FX+1);CHR$(FY);"iii" 3260 FOR I=1 TO 250: NEXT I 3270 PRINT CHR$(27);"Y";CHR$(FX-1);CHR$(FY);" " 3280 PRINT CHR$(27);"Y";CHR$(FX);CHR$(FY-1);" " 3290 PRINT CHR$(27);"Y";CHR$(FX);CHR$(FY+3);" " 3300 PRINT CHR$(27);"Y";CHR$(FX+1);CHR$(FY);" ":GOTO 2790 3310 PRINT CHR$(27);"Y8 ";CHR$(27);"l" 3320 GOTO 2790 3330 REM 3340 REM ...................FIGHTER POSITION UPDATE ROUTINE................ 3350 REM 3360 IF FQ=1 THEN 3430 ELSE FQ=1 3370 LET FX=INT(100*RND(1)) 3380 IF FX<36 OR FX>52 THEN 3370 3390 LET FY=INT(200*RND(1)) 3400 IF FY<44 OR FY>97 THEN 3390 3410 LET KM=INT(10000*RND(1)) 3420 FZ=INT(16*RND(1)) 3430 IF INT(100*RND(1))>6 THEN 3450 3440 FZ=INT (16*RND(1)) 3450 IF INT(10*RND(1))<A9 THEN 3460 ELSE X=FX:Y=FY:GOTO 3620 3460 IF FZ<>0 THEN 3470 ELSE X=FX-1:Y=FY+1 3470 IF FZ<>1 THEN 3480 ELSE S=FX:Y=FY+1 3480 IF FZ<>2 THEN 3490 ELSE X=FX+1:Y=FY+1 3490 IF FZ<>3 THEN 3500 ELSE X=FX+1:Y=FY 3500 IF FZ<>4 THEN 3510 ELSE X=FX+1:Y=FY-1 3510 IF FZ<>5 THEN 3520 ELSE X=FX:Y=FY-1 3520 IF FZ<>6 THEN 3530 ELSE X=FX-1:Y=FY-1 3530 IF FZ<>7 THEN 3540 ELSE X=FX-1:Y=FY 3540 IF FZ<>8 THEN 3550 ELSE X=FX-1:Y=FY+2 3550 IF FZ<>9 THEN 3560 ELSE X=FX-1:Y=FY+3 3560 IF FZ<>10 THEN 3570 ELSE X=FX+1:Y=FY+3 3570 IF FZ<>11 THEN 3580 ELSE X=FX+1:Y=FY+2 3580 IF FZ<>12 THEN 3590 ELSE X=FX+1:Y=FY-2 3590 IF FZ<>13 THEN 3600 ELSE X=FX+1:Y=FY-3 3600 IF FZ<>14 THEN 3610 ELSE X=FX-1:Y=FY-3 3610 IF FZ<>15 THEN 3620 ELSE X=FX-1:Y=FY-2 3620 IF FL$<>"1" THEN 3630 ELSE X=X-1:Y=Y+1 3630 IF FL$<>"2" THEN 3640 ELSE X=X-2:Y=Y 3640 IF FL$<>"3" THEN 3650 ELSE X=X-1:Y=Y-1 3650 IF FL$<>"4" THEN 3660 ELSE X=X:Y=Y+2 3660 IF FL$<>"6" THEN 3670 ELSE X=X:Y=Y-2 3670 IF FL$<>"7" THEN 3680 ELSE X=X+1:Y=Y+1 3680 IF FL$<>"8" THEN 3690 ELSE X=X+2:Y=Y 3690 IF FL$<>"9" THEN 3700 ELSE X=X+1:Y=Y-1 3700 IF X>39 AND X<50 AND Y>55 AND Y<87 THEN 3740 3710 IF SGN(KM)=+1 THEN KM=KM+INT(200*RND(1)) 3720 IF SGN(KM)=-1 THEN KM=KM-INT(200*RND(1)) 3730 IF KM<10000 THEN 3760 ELSE 3830 3740 IF SGN(KM)=+1 THEN KM=KM-INT(200*RND(1)) 3750 IF SGN(KM)=-1 THEN KM=KM+INT(200*RND(1)) 3760 IF X<36 OR X>52 OR Y<42 OR Y>98 THEN 3830 3770 IF X=FX AND Y=FY THEN RETURN 3780 PRINT CHR$(27);"Y";CHR$(FX);CHR$(FY);" ":FX=X:FY=Y 3790 PRINT CHR$(27);"Y";CHR$(FX);CHR$(FY);"v^t" 3800 PRINT CHR$(27);"Y 5";KM 3810 EV=10*(44-FX):PRINT CHR$(27);"Y K";EV 3820 BR=3*(FY-70):PRINT CHR$(27);"Y ";BR:RETURN 3830 PRINT CHR$(27);"Y";CHR$(FX);CHR$(FY);" " 3840 FQ=0:RETURN 3850 PRINT CHR$(27);"Y8 ";CHR$(27);"l":RETURN 3860 FOR I=1 TO 500:NEXT I:PRINT CHR$(27);"y1";CHR$(27);"Y ";CHR$(27);"E" 3870 PRINT CHR$(27);"q";CHR$(27);"Y( ";CHR$(27);"G" 3880 PRINT ,"CONGRATULATIONS ON A JOB WELL DONE. YOU HAVE" 3890 PRINT ,"DESTROYED DARTH VADER AND HIS STORM TROOPERS " 3900 PRINT ,"AND HAVE SAVED THE REBELLION.":GOTO 3950 3910 PRINT CHR$(27);"E";CHR$(27);"Y( " 3920 PRINT ,"YOU HAVE ONLY DESTROYED";ED;"TIE FIGHTERS AND";CHR$(27);"y1" 3930 PRINT ,"YOU LET DARTH VADER GET AWAY. OH WELL,I GUESS";CHR$(27);"G" 3940 PRINT ,"WE WANT HIM AROUND FOR THE SEQUEL ANYWAY!" 3950 PRINT:PRINT ,"DO YOU WANT TO PLAY AGAIN <Y or N>?" 3960 A$=INPUT$(1):IF A$="Y"THEN 1820ELSE IF A$<>"N"THEN 3960ELSE 1000 950 PRINT:PRINT ,"DO YOU WANT TO PLAY AGAIN <Y or N>?" 3960 A$=INPUT$(1):IF A$="Y"THEN 1820ELSE IF A$<>[/spoiler] | labelminimizesubject |
Star Trader | People's Computer Company (author) | 1974 | A futuristic mercantile simulation. In the year 2070 the player must travel between colonized worlds with different levels of development to buy and sell goods with the aim of turning a profit. The player must haggle for the best prices. The galaxy slowly evolves as colonies grow more sophisticated and supply and demand of goods changes. Money can be put in the bank where the player can gain interest, but not all planets have banks to withdraw from. The game features a world map of 10 by 10 light-years, centred around Sol. The planets further away have more raw resources and those closer by produce more advanced goods, but rely on raw resources, which is where the player comes in. https://wiki.classictw.com/index.php/Star_Trader***This game has several a very notable feature for its day. One of which was having the choice a male of female captain and male and female crew members within a military setting. And, this had realistic effects within the society depicted (pros and cons depending on ratio or single-sex choice). Also, a valuable resource within the game was computer software. The design of the game necessitates that the computer software was bought and sold as source code as computer hardware was not (each planet created their own hardware to run the code). It might be unique for offering computer software/source code as a non-copyrighted commodity (as if it were like metal or uranium). The game was very much in keeping with the publisher's views on computers being a learning tool, used to improve social justice, and the importance of morality in computer use. PPC maintained the view that computer code should not be copyrighted. And all this was years before Net Neutrality and the Free Software Foundation. Among other things one might not expect is the issue of ownership of the captain's spacecraft, issues with unions, and illegal immigration. The code came with lists of suggestions for tweaking the game and adding features along with conciquencies. For instance, they suggest adding the ability of the captain and crew to engage in piracy (not of the software kind obviously) and implement penalties. Have competing superpowers (The captain and crew are from the game's single superpower planet). Politically and economically motivated embargos (and the evitable conflicts, that can include nuclear warfare). Ship-to-ship trading, and issues on what each planet's government thinks about that (ship-to-ship is tax free? Taxed, by who and how is that traced?). Implement ship durability and/or fuel efficiency along with the option of exceeding specs (top speed and fuel efficiency are static in the game, there is no reason to go any slower). The economy model of the game is Macro-economic with few fully developed members and many developing members growing and producing at different rates, a single merchant type that carries any inexhaustible resource. It is suggested to use a different economy model with various merchant types and exhaustible resources. The economy suggestions are the only ones accompanied by details about the actual code in need of change. The publisher asks players where pirates get their fuel (most games ignore such details, pirates are an economic factor in this game rather than a mere hazard). | labelimagesubject |
Star Trek | ? | 1981 | [spoiler=show source code;hide source code]10 REM NAME- STAR TREK 20 REM 30 REM ORIGIN- BILL PETERSON, CAL TECH, 1971. REVISED MARCH 1972 BY DON 40 REM L. DAGLOW OF I.E.C. AND POMONA COLLEGE. 50 REM 60 REM VERSION-- 32-8, WITH 3 DIMENSIONS & MANY OTHER CHANGES. MAY 14, 1973. DON L. DAGLOW. 75 REM ASSISTANCE ALSO RENDERED BY J. OSSER, POMONA COLLEGE, 76 REM AND M. LIEBMANN, BEVERLY HILLS H.S. 80 REM 90 REM VERSION 32-9 MODIFIED TO RUN UNDER EITHER CBASIC OR EBASIC COMPILERS 92 REM WITH OTHER MODIFICATIONS AND ENHANCEMENTS 95 REM BY JAMES UNDERWOOD --- JUNE 22 1981 96 REM (NOTE: CURRENTLY CONFIGURED FOR EBASIC) 97 REM (FOR CBASIC, INCREASE TAB NUMBERS IN LINE 3992 BY 1) 99 REM (CAN ALSO BE RUN UNDER 'BASCOM' IF: 1:MAKE ABOVE CHANGE,) 101 REM (2:REMOVE RANDOMIZE, 3:CHANGE ALL RND'S TO RND(1)) 105 REM 110 REM TABLE OF VARIABLES IS AT LINE 64000 120 REM 122 DIM S1(4),S2(4) 125 PRINT "HOW MANY MISSIONS HAVE YOU COMMANDED"; 127 INPUT A$ 128 REM ABOVE INPUT NECCESSARY TO SEED RANDOMIZE 130 RANDOMIZE 132 FOR I=1 TO 6 135 PRINT 137 NEXT I 140 DIM O$(23) 150 V$="32-9" 152 REM UTILITY FUNCTIONS 156 DEF FNO(A)=2.66*(ABS(45-(ABS(A)))+5)/100 158 DEF FNZ(R,C)=ABS(SGN(-1+(SGN(ABS(R)-C)))) 160 REM REAR OR FORWARD WEAPONS DEFINITION 165 DEF FND(B)=INT(ABS(B/90)) 170 REM BUILDING BLOCK FOR PHASER & P.T. FUNCTIONS 172 DEF FNX(B)=3.1415926*ABS(90-ABS(B))/180 175 DEF FNY(B,C)=SIN(FNX(B))*(C-FND(B))/C 180 REM PHOTON TORPEDO FUNCTION: 3D 190 DEF FNT(R,B,A)=FNZ((R-500),200)*(1-((R-500)*(R-500))/40000)*FNY(B,3)*FNO(A) 245 REM PHASER FUNCTION: 3D 250 DEF FNP(R,B,A)=FNZ(R,400)*(1-((R-200)*(R-200))/40000)*FNY(B,5)*FNO(A) 330 REM CHOOSE DESTINATION 335 R9=INT(RND*10)+1 340 FOR I=1 TO 10 350 READ L$ 355 IF I=R9 THEN 365 360 NEXT I 362 GOTO 420 365 D$=L$ 367 GOTO 360 370 DATA BETA AURIGAE 5, GAMMA TRISKELLION 7 380 DATA EPSILON CYGNI 2, ALPHA ARCTURUS 4 390 DATA DELTA CANOPIS 12, OMICRON BETELGEUSE 27 400 DATA SIGMA RIGEL 3, KAPPA SIRIUS 8 410 DATA ALPHA CENTAURI 5,DELTA ALDEBARAN 9 420 REM CHOOSE OUR SHIP 425 R9=INT(RND*24)+1 430 FOR I=1 TO 24 440 READ N$ 445 IF I=R9 THEN 455 450 NEXT I 452 GOTO 520 455 S$=N$ 457 GOTO 450 460 DATA ENTERPRISE,VALIANT,HOOD,ENTERPRISE 470 DATA DEFIANT,ENTERPRISE,EXCALIBUR,EXETER 480 DATA LEXINGTON,YORKTOWN,REPUBLIC,CONSTITUTION 490 DATA FARRAGUT,KONGO,CONSTELLATION,INTREPID 500 DATA BAYERN,"CORAL SEA",GETTYSBURG,ENTERPRISE 510 DATA BASTOGNE,ENTERPRISE,CONCORD,COURAGE 520 REM CHOOSE ENEMY NATION 525 R9=INT(RND*10)+1 530 FOR I=1 TO 10 540 READ K7$ 545 IF R9=I THEN 555 550 NEXT I 552 GOTO 590 555 E1$=K7$ 557 GOTO 550 560 DATA KLINGON,ROMULAN,THOLIAN 570 DATA KALANDAN,SCALOSIAN,KELVAN,TALOSIAN 580 DATA MELKOTIAN,ANDRAN,COLUSIAN 590 REM CHOOSE ENEMY SHIP 595 R9=INT(RND*14)+1 600 FOR I=1 TO 14 610 READ K8$ 615 IF R9=I THEN 625 620 NEXT I 622 GOTO 660 625 E2$=K8$ 627 GOTO 620 630 DATA KRULIX,GRANAK,SLORK,QUARLO,TROBLAK 640 DATA PHILTOK,RHYLIX,BIESTAK,CORUDA,ZIKAL 650 DATA SAYADA,ZARU,FESARIUS,SKULZIA 660 REM CHOOSE ENEMY CAPTAIN 665 R9=INT(RND*19)+1 670 FOR I=1 TO 19 680 READ K9$ 685 IF R9=I THEN 695 690 NEXT I 692 GOTO 730 695 E3$=K9$ 697 GOTO 690 700 DATA TRAKKA,KURDA,VARNOR,GRANOLT,SHLURG 710 DATA KORAX,KANG,KOLOTH,LOSIRA,SYBO 720 DATA CONNORS,EORR,BALOK,LOSKENE 725 DATA ROJAN,KELINDA,BERATTIS,REDJAC,KESLA 730 REM COMMAND RESPONSE VERBALIZATIONS 740 FOR I=1 TO 23 750 READ O$(I) 760 NEXT I 770 DATA ENEMY RANGE AND BEARING 780 DATA FIRE FORWARD PHASERS,FIRE REAR PHASERS 790 DATA FIRE FORWARD PHOTON TORPEDOES,FIRE REAR PHOTON TORPEDOES 800 DATA LAUNCH ANTIMATTER PROBE,CLOSE ON ENEMY VESSEL 810 DATA MOVE AWAY FROM ENEMY,CLOSE AT WARP SPEED 820 DATA MOVE AWAY AT WARP SPEED 830 DATA "OPTIMUM SHIELD DEFENSE, MR. SULU" 840 DATA "180 DEGREES ABOUT, MR. SULU" 850 DATA "FIRING PROBABILITIES, MR. SPOCK" 860 DATA "A BRIEFING, MR. SPOCK","DAMAGE REPORT, MR. SPOCK" 870 DATA "OPEN A CHANNEL TO STAR FLEET, LIEUTENANT" 880 DATA "LET'S SEE WHAT THE ENEMY DOES NEXT" 890 DATA "ACTIVATE AUTO-DESTRUCT SEQUENCE" 900 DATA "OPEN A CHANNEL TO THE ENEMY VESSEL, LIEUTENANT" 910 DATA "MR. SPOCK, TAKE COMMAND. I'M GOING TO LEAD A BOARDING PARTY." 920 DATA "A WEAPONS BRIEFING, MR. SPOCK." 930 DATA "WEAPON POWER BANKS STATUS REPORT, MR. SPOCK." 940 DATA "PREPARE TO ALLOCATE SHIELD POWER TO WEAPONS BANKS." 1020 PRINT 1030 IF G9>0 THEN 1400 1049 REM 1050 REM BEGINNING OF MAIN PROGRAM 1051 REM 1120 PRINT "SPACE, THE FINAL FRONTIER." 1130 PRINT "THIS IS A VOYAGE OF THE STARSHIP ";S$;"." 1140 PRINT "NOW ON ITS SECOND FIVE YEAR MISSION;" 1150 PRINT "ITS TASK: TO EXPLORE STRANGE NEW WORLDS," 1160 PRINT "TO SEEK OUT NEW LIFE AND NEW CIVILIZATIONS," 1170 PRINT "TO BOLDLY GO WHERE NO MAN HAS GONE BEFORE." 1180 PRINT 1190 PRINT 1200 PRINT TAB(20);"S T A R T R E K" 1210 PRINT TAB(20);"=================" 1220 PRINT 1222 V8=0 1230 PRINT 1240 PRINT "YEOMAN: WOULD YOU PLEASE ENTER YOUR NAME FOR" 1250 PRINT " THE LOG, SIR"; 1260 INPUT C$ 1262 IF C$<>"" THEN 1270 1265 C$="KIRK" 1270 C9$=C$ 1280 PRINT "SPOCK: YOU ARE IN COMMAND OF THE ";S$;", CAPTAIN ";C$;"." 1290 PRINT " DO YOU WISH A LIST OF THE POSSIBLE COMMANDS, SIR"; 1300 INPUT A$ 1305 IF A$="" THEN 1300 1310 IF LEFT$(A$,1)<>"Y" THEN 1335 1320 GOSUB 7760 1330 GOSUB 8330 1335 PRINT " THIS VESSEL IS NOW A VERSION ";V$;" STARSHIP;" 1340 PRINT " DO YOU WISH A BRIEFING ON RECENT ";S$;" MODIFICATIONS"; 1350 INPUT A$ 1355 IF A$="" THEN 1350 1360 IF LEFT$(A$,1)<>"Y" THEN 1400 1370 GOSUB 11000 1400 Y=50*(RND-.5) 1405 PRINT 1410 REM TELL WHERE WE'RE GOING AND WHY 1420 PRINT C$;": CAPTAIN'S LOG, STAR DATE ";2047+(RND*47) 1430 PRINT " WE ARE PRESENTLY ON COURSE FOR ";D$ 1440 ON INT(RND*10)+1 GOTO 1450,1470,1490,1520,1550,9530,9560,9590,9610,9630 1450 PRINT " TO INVESTIGATE REPORTS OF ";E1$;" SABOTAGE." 1460 GOTO 1570 1470 PRINT " TO EVACUATE FEDERATION CITIZENS FROM THAT WAR-TORN PLANET." 1480 GOTO 1570 1490 PRINT " TO ASSIST IN PUTTING DOWN A STRIKE BY DILITHIUM MINERS" 1500 PRINT " ON THAT PLANET." 1510 GOTO 1570 1520 PRINT " WITH A TEAM OF ASTROGEOLOGISTS TO INVESTIGATE REPORTS OF" 1530 PRINT " VALUABLE MINERAL DEPOSITS ON THAT NEWLY COLONIZED PLANET." 1540 GOTO 1570 1550 PRINT " FOR ASTROPHYSICAL RESEARCH ON THE NEBULA IN THAT QUADRANT." 1560 REM TELL WHO ENEMY IS 1570 IF RND>.5 THEN 1600 1580 PRINT "SULU: SIR, I'M PICKING UP A VESSEL ON AN ATTACK VECTOR" 1585 PRINT " WITH THE ";S$;"." 1590 GOTO 1640 1600 PRINT "SULU: SIR, I THINK WE'RE BEING FOLLOWED; THERE'S A SHIP" 1610 PRINT " ON THE SAME COURSE AS THE ";S$ 1640 PRINT "SPOCK: SHIP'S COMPUTERS INDICATE THAT IT IS THE "; 1650 PRINT E1$;" VESSEL " 1660 PRINT " ";E2$;" UNDER THE COMMAND OF CAPTAIN ";E3$;"." 1670 IF E3$<>"CONNORS" THEN 1740 1680 PRINT C$;": CONNORS...THE ONLY STARSHIP COMMANDER EVER TO DEFECT" 1690 PRINT " TO AN ENEMY EMPIRE. MR. SPOCK, IT LOOKS AS IF WE MAY HAVE" 1700 PRINT " A CHANCE TO SETTLE AN OLD SCORE FOR THE FEDERATION." 1710 PRINT "SPOCK: INDEED, SIR." 1720 PRINT "CHEKOV: JUST WAIT REMTIL I GET MY PHASERS LOCKED IN ON THAT" 1730 PRINT " TRAITOR..." 1740 IF RND>.5 THEN 1770 1750 PRINT C$;": SOUND RED ALERT, LIEUTENANT UHURA." 1760 GOTO 1780 1770 PRINT C$;": SOUND BATTLE STATIONS, LIEUTENANT UHURA." 1780 PRINT "UHURA: AYE, SIR." 1790 IF RND>.5 THEN 1830 1800 REM ESTABLISH MAIN SPEAKER (CHEKOV OR SULU) 1810 X$="SULU" 1820 GOTO 1840 1830 X$="CHEKOV" 1840 H1=0 1841 H2=0 1842 G=0 1843 X=0 1844 S=0 1845 M6=0 1846 X2=0 1847 K9=0 1848 M5=0 1849 P=0 1860 REM ESTABLISH EVERYBODY'S SHIELDS AT 100% 1870 FOR Q5=1 TO 4 1880 S1(Q5)=100 1890 S2(Q5)=100 1900 NEXT Q5 1910 REM ESTABLISH ALL WEAPON POWER BANKS AT 300 1920 P1=300 1925 P2=300 1930 REM FIRST RANGE AND BEARING 1940 R=1000-100*RND 1950 B=360*(RND-.5) 1960 B1=360*(RND-.5) 1970 REM 1980 REM TELL BEARING AND GET ORDERS 2000 REM 2010 GOSUB 8060 2020 PRINT X$;": ORDERS, SIR"; 2030 INPUT I 2120 IF I<1 THEN 2140 2130 IF I<24 THEN 2160 2140 PRINT X$;": PLEASE SAY AGAIN, SIR"; 2150 GOTO 2030 2160 PRINT C$;": ";O$(I) 2170 REM EXECUTE ORDERS 2180 IF I>20 THEN 2240 2190 IF I>12 THEN 2230 2200 IF I>6 THEN 2220 2210 ON I GOTO 2000,2260,2310,2360,2420,2480 2220 ON (I-6) GOTO 2520,2520,2560,2560,3750,2520 2230 ON (I-12) GOTO 3880,3910,3940,2600,5140,4790,4940,9200 2240 ON (I-20) GOTO 9890,10060,10100 2250 REM MAKE SURE WEAPON SPECIFIED IS INTACT 2260 IF R>400 THEN 9490 2270 IF H1<7 THEN 2710 2280 PRINT "CHEKOV: FORWARD PHASERS ARE DEAD, SIR." 2290 GOSUB 8560 2300 GOTO 5140 2310 IF R>400 THEN 9490 2320 IF H1<6 THEN 3240 2330 PRINT "CHEKOV: REAR PHASER IS DEAD, SIR." 2340 GOSUB 8560 2350 GOTO 5140 2360 IF R<300 THEN 9490 2370 IF R>700 THEN 9490 2380 IF H1<9 THEN 3260 2390 PRINT "CHEKOV: FORWARD PHOTON TORPEDOES ARE DEAD, SIR." 2400 GOSUB 8560 2410 GOTO 5140 2420 IF R<300 THEN 9490 2430 IF R>700 THEN 9490 2440 IF H1<8 THEN 3360 2450 PRINT "CHEKOV: REAR PHOTON TORPEDO IS DEAD, SIR." 2460 GOSUB 8560 2470 GOTO 5140 2480 IF H1<12 THEN 3390 2490 PRINT "CHEKOV: PROBE LAUNCHER IS DEAD, SIR." 2500 GOSUB 8560 2510 GOTO 5140 2520 IF H1<14 THEN 3550 2530 PRINT "SULU: IMPULSE ENGINES ARE DEAD, SIR." 2540 GOSUB 8560 2550 GOTO 5140 2560 IF H1<11 THEN 3550 2570 PRINT "SULU: WARP DRIVE IS DEAD, SIR." 2580 GOSUB 8560 2590 GOTO 5140 2600 IF H2<11 THEN 2630 2610 PRINT "SPOCK: THE ";E1$;" HAS NO ENGINES, SIR." 2620 GOTO 5140 2630 IF G=0 THEN 4460 2640 PRINT "SPOCK: I DO NOT THINK THAT THE ";E1$;"S WILL BE FOOLED" 2650 PRINT " BY THAT MANEUVER AGAIN, SIR." 2660 GOSUB 8560 2670 G=G+1 2680 IF G=3 THEN 8750 2690 GOTO 5140 2700 REM TELL WHAT WE DO, COMPUTE SUCCESS: PHASERS 2710 IF ABS(B)<90 THEN 2770 2730 PRINT "CHEKOV: INCORRECT VECTOR, SIR." 2740 M5=M5+1 2750 IF M5>3 THEN 8750 2760 GOTO 5140 2770 P9=(RND*10)+5 2790 P1=P1-P9 2800 IF P1>0 THEN 2830 2810 GOSUB 10000 2820 GOTO 5140 2830 IF RND<FNP(R,B,B9) THEN 2860 2840 PRINT "CHEKOV: MISSED HIM, SIR." 2850 GOTO 5140 2855 REM HIT 2860 IF RND<.375 THEN 3050 2870 V=.5 2880 K=1 2890 FOR K1=2 TO 4 2900 IF S2(K)>=S2(K1) THEN 2920 2910 K=K1 2920 NEXT K1 2930 IF S2(K)>50 THEN 2950 2940 K=INT(RND*4+1) 2950 H2=H2+V 2960 PRINT "SPOCK: A HIT ON SHIELD #";K;"." 2970 IF S2(K)=0 THEN 3090 2980 S2(K)=S2(K)-30*V*(RND+.1) 3000 IF S2(K)>0 THEN 3030 3010 PRINT "SPOCK: THAT SHIELD IS NOW GONE."; 3015 PRINT CHR$(7);CHR$(7);CHR$(7);CHR$(7);CHR$(7);CHR$(7);CHR$(7);CHR$(7) 3020 S2(K)=0 3030 GOSUB 9650 3040 GOTO 5140 3045 REM DIRECT HIT 3050 V=1 3060 PRINT "CHEKOV: DIRECT HIT, SIR!" 3070 GOTO 2880 3080 REM ENEMY IS CRIPPLED 3090 PRINT "CHEKOV: GOT HIM, SIR!" 3100 IF RND<.5 THEN 7640 3110 PRINT "SPOCK: THE ";E1$;" VESSEL REMAINS INTACT, CAPTAIN." 3120 PRINT C$;": OPEN A HAILING FREQUENCY, LIEUTENANT." 3130 PRINT "UHURA: HAILING FREQUENCY OPEN, SIR." 3140 PRINT C$;": THIS IS CAPTAIN ";C$;" OF THE STARSHIP ";S$;"." 3150 PRINT " PREPARE TO COMMENCE BEAMING OVER SURVIVORS." 3160 IF RND<.5 THEN 3210 3170 PRINT E3$;": I AM AFRAID THAT WILL BE QUITE IMPOSSIBLE," 3180 PRINT " CAPTAIN, SINCE WE HAVE JUST INITIATED OUR AUTO-DESTRUCT." 3190 PRINT " 10 9 8 7 6 5 4 3 2 1" 3200 GOTO 7640 3210 PRINT E3$;": VERY WELL, CAPTAIN. OUR SHIELDS HAVE BEEN DEACTIVATED." 3220 GOTO 8150 3230 REM TELL WHAT WE DO, COMPUTE SUCCESS: PHOTON TORPEDOES 3240 IF ABS(B)<90 THEN 2730 3250 GOTO 2770 3260 IF ABS(B)>=90 THEN 2730 3270 P9=(RND*9)+5 3290 P1=P1-P9 3300 IF P1>0 THEN 3330 3310 GOSUB 10000 3320 GOTO 5140 3330 IF RND>FNT(R,B,B9) THEN 2840 3340 IF RND<.375 THEN 2870 3350 GOTO 3050 3360 IF ABS(B)<90 THEN 2730 3370 GOTO 3270 3380 REM ANTIMATTER PROBES 3390 IF X<10 THEN 3430 3400 PRINT "CHEKOV: WE HAVE NO MORE PROBES, SIR." 3410 GOSUB 8560 3420 GOTO 5280 3430 X=X+1 3450 Z4=RND 3460 IF Z4<.07135 THEN 3510 3470 PRINT "CHEKOV: PROBE MISSED BY ";(Z4*100)-7.135;"MGM., SIR." 3480 IF (Z4*100)-7.135>5 THEN 3500 3490 PRINT "SULU: ALMOST GOT HIM THAT TIME, SIR!" 3500 GOTO 5140 3510 PRINT "SPOCK: PROBE IS HOMING ON THE ";E2$;" , SIR." 3520 V=3 3530 GOTO 2880 3540 REM OUR MOVE IMPLEMENTATION 3550 ON (I-6) GOTO 3570,3610,3660,3700,3750,3830 3560 REM CLOSE ON ENEMY 3570 GOSUB 6660 3580 R=ABS(R-Y) 3590 GOTO 5140 3600 REM MOVE AWAY FROM ENEMY 3610 GOSUB 6730 3620 R=ABS(R+Y) 3630 IF R>5000 THEN 6550 3640 GOTO 5140 3650 REM CLOSE AT WARP SPEED 3660 GOSUB 6780 3670 R=ABS(R-2*Y) 3680 GOTO 5140 3690 REM ESCAPE AT WARP SPEED 3700 GOSUB 6850 3710 R=ABS(R+2*Y) 3720 IF R>5000 THEN 6550 3730 GOTO 5140 3740 REM PUT STRONGEST SHIELD IN POSITION 3750 S=1 3760 FOR J=2 TO 4 3770 IF S1(J)<=S1(S) THEN 3790 3780 S=J 3790 NEXT J 3800 PRINT "SULU: SHIELD #";S;" IS IN POSITION." 3810 GOTO 2000 3820 REM 180 DEGREES ABOUT 3830 B=B+180 3832 B5=1 3835 R=R+.0001 3840 IF B<=180 THEN 5140 3850 B=B-360 3860 GOTO 5140 3870 REM TELL PROBABILITIES 3880 PRINT "SPOCK: PHASERS:";FNP(R,B,B9)*100;"%, P.T.'S:"; 3885 PRINT FNT(R,B,B9)*100;"%." 3890 GOTO 2000 3900 REM FEEDER FOR COMMANDS REPETITION 3910 GOSUB 7760 3920 GOTO 2000 3930 REM DAMAGE REPORT 3940 PRINT "SPOCK: COMPUTER DAMAGE REPORT:" 3950 PRINT TAB(10);"UNITS OF POWER REMAINING" 3960 PRINT TAB(6);"SHIELD #";TAB(16);S$;TAB(30);E2$ 3965 E=0 3967 U=0 3970 FOR J=1 TO 4 3980 PRINT TAB(9);J;TAB(16);S1(J);TAB(30);S2(J) 3985 E=E+S2(J) 3987 U=U+S1(J) 3990 NEXT J 3992 PRINT TAB(9);"=";TAB(16);"=======";TAB(30);"=======" 3995 PRINT " COMPOSITE";TAB(16);U/4;TAB(30);E/4 4000 PRINT S$;" DAMAGE:"; 4010 IF H1>5.5 THEN 4040 4020 PRINT TAB(20);"NONE" 4030 GOTO 4180 4040 PRINT TAB(20);"REAR PHASER DEAD" 4050 IF H1<7 THEN 4180 4060 PRINT TAB(20);"FORWARD PHASERS DEAD" 4070 IF H1<8 THEN 4180 4080 PRINT TAB(20);"REAR PHOTON TORPEDOES DEAD" 4090 IF H1<9 THEN 4180 4100 PRINT TAB(20);"FORWARD PHOTON TORPEDOES DEAD" 4110 IF H1<11 THEN 4180 4120 PRINT TAB(20);"TRANSPORTER LOST" 4130 PRINT TAB(20);"WARP DRIVE LOST" 4140 IF H1<12 THEN 4180 4150 PRINT TAB(20);"PROBE LAUNCHER DESTROYED" 4160 IF H1<14 THEN 4180 4170 PRINT TAB(20);"IMPULSE POWER LOST" 4180 PRINT E2$;" DAMAGE:"; 4190 IF H2>5.5 THEN 4220 4200 PRINT TAB(20);"NONE" 4210 GOTO 4360 4220 PRINT TAB(20);"REAR PHASERS DEAD" 4230 IF H2<7 THEN 4360 4240 PRINT TAB(20);"FORWARD PHASERS DEAD" 4250 IF H2<8 THEN 4360 4260 PRINT TAB(20);"REAR PHOTON TORPEDOES DEAD" 4270 IF H2<9 THEN 4360 4280 PRINT TAB(20);"FORWARD PHOTON TORPEDOES DEAD" 4290 IF H2<11 THEN 4360 4300 PRINT TAB(20);"TRANSPORTER LOST" 4310 PRINT TAB(20);"WARP DRIVE DEAD" 4320 IF H2<12 THEN 4360 4330 PRINT TAB(20);"PROBE LAUNCHER DESTROYED" 4340 IF H2<14 THEN 4360 4350 PRINT TAB(20);"IMPULSE ENGINES DEAD" 4360 PRINT "PROBES EXPENDED:" 4380 PRINT " ";S$;TAB(20);X 4390 PRINT " ";E2$;TAB(20);X2 4400 PRINT "POWER REMAINING IN WEAPONS BANKS:" 4410 PRINT " ";S$;TAB(20);P1 4420 PRINT " ";E2$;TAB(20);P2 4440 GOTO 2000 4450 REM CORBOMITE BLUFF 4460 PRINT C$;": USE CODE 2." 4470 PRINT "UHURA: CODE 2, SIR? THE ";E1$;"S BROKE CODE 2 YESTERDAY, SIR." 4480 PRINT C$;": CODE 2, LIEUTENANT. IMMEDIATELY." 4490 PRINT "UHURA: AYE, SIR. GO AHEAD, SIR." 4500 PRINT C$;": THIS IS CAPTAIN ";C$;" OF THE STARSHIP ";S$;"." 4510 PRINT " WE ARE UNDER ATTACK BY THE ";E1$;" SHIP ";E2$ 4520 PRINT " AND, IN ORDER TO PREVENT THE ";S$;" FROM FALLING" 4530 PRINT " INTO ENEMY HANDS, WE ARE ACTIVATING THE CORBOMITE" 4540 PRINT " DEVICE. SINCE THIS WILL RESULT IN THE COMPLETE" 4550 PRINT " ANNIHILATION OF ALL MATTER WITHIN A RANGE OF 5000" 4560 PRINT " MEGAMETERS, ALL VESSELS SHOULD BE WARNED TO STAY" 4570 PRINT " CLEAR OF THIS AREA FOR THE NEXT ";INT(RND*4)+2;" SOLAR YEARS." 4620 G=1 4630 IF RND>.25 THEN 4740 4640 PRINT "SULU: ";E1$;" IS MOVING AWAY AT WARP 10, SIR." 4650 PRINT "SPOCK:THE TACTIC APPEARS TO HAVE BEEN EFFECTIVE, SIR." 4660 PRINT " THE ";E1$;" HAS BEEN REPULSED." 4710 GOTO 6560 4740 PRINT "SULU:NO IMMEDIATE CHANGE IN ";E1$;" COURSE AND SPEED, SIR." 4750 PRINT "SPOCK: IT WOULD SEEM THAT THEY HAVE, AS YOU HUMANS PUT IT," 4760 PRINT " 'CALLED OUR BLUFF', CAPTAIN." 4770 GOTO 5140 4780 REM BLOW UP OUR SHIP 4790 PRINT "SPOCK: ARE YOU SURE, SIR"; 4800 INPUT A$ 4805 IF A$="" THEN 4800 4810 IF LEFT$(A$,1)<>"N" THEN 4830 4820 GOTO 2000 4830 IF H1<9 THEN 8750 4840 PRINT "COMPUTER: 10 9 8 7 6 5 4 3 2 1" 4850 PRINT " THE ";S$;" HAS BEEN DESTROYED." 4860 Q=200*RND 4870 PRINT " RADIUS OF EXPLOSION:";Q;" MGM." 4880 IF Q>=R THEN 4910 4890 PRINT " ";E1$;" VESSEL REMAINS INTACT." 4900 GOTO 8150 4910 PRINT " ";E1$;" VESSEL DESTROYED." 4920 GOTO 8150 4930 REM SURRENDER TO ENEMY 4940 PRINT "UHUPA: ARE YOU SURE, SIR"; 4950 INPUT A$ 4955 IF A$="" THEN 4950 4960 IF LEFT$(A$,1)<>"N" THEN 4980 4970 GOTO 2000 4980 IF H1<11 THEN 8750 4990 IF E1$<>"ROMULAN" THEN 5020 5000 PRINT "UHURA: NO ANSWER FROM THE ";E2$;", SIR." 5010 GOTO 5140 5020 PRINT C$;": THIS IS CAPTAIN ";C$;" OF THE STARSHIP ";S$;"." 5030 PRINT " WILL YOU ACCEPT OUR UNCONDITIONAL SURRENDER?" 5050 PRINT E3$;": ON BEHALF OF THE ";E1$;" EMPIRE, I ACCEPT YOUR" 5060 PRINT " UNCONDITIONAL SURRENDER. PREPARE FOR IMMEDIATE BOARDING." 5120 GOTO 8150 5130 REM 5140 REM PRIMARY ENEMY DECISION SECTION 5150 REM 5151 IF R>5000 THEN 6550 5160 REM ENEMY TRANSPORTER FEEDER 5150 IF H2>10.9 THEN 5200 5180 IF H1>8.9 THEN 5200 5190 IF RND>.997 THEN 9000 5200 REM FEED TO ENGINES & WEAPONS 5210 IF H2<9 THEN 5230 5220 IF R<35 THEN 6590 5230 IF H2>13.9 THEN 6440 5240 IF H1<9 THEN 5280 5250 IF R>100 THEN 5280 5260 IF H2>11.9 THEN 5750 5270 GOTO 5850 5280 IF R>700 THEN 5470 5290 IF H2<11.9 THEN 5330 5300 IF H1>10.9 THEN 6440 5310 IF X>9 THEN 6440 5320 GOTO 5700 5330 IF H2<9 THEN 5360 5340 IF X2>9 THEN 5800 5345 IF RND>.5 THEN 5800 5350 GOTO 8890 5355 REM P.T.'S 5360 IF FNP(R,B1,A9)>FNT(R,B1,A9) THEN 5410 5370 IF H2<8 THEN 5650 5380 IF ABS(B1)<90 THEN 5650 5390 IF H1<7 THEN 5850 5400 GOTO 5550 5405 REM PHASERS 5410 IF H2>6.9 THEN 5650 5420 IF R>400 THEN 5800 5430 IF H2<5.5 THEN 5600 5440 IF ABS(B1)< 90 THEN 5600 5450 IF H1<5.5 THEN 5850 5460 GOTO 5550 5470 REM BEYOND 700 MGM. DECISION SUBSECTION 5480 IF H2>11.9 THEN 5700 5490 IF H2<9 THEN 5800 5500 IF X2>9 THEN 5700 5510 GOTO 8890 5550 REM 180 DEGREES ABOUT 5555 B5=1 5560 B1=B1+180 5565 R=R+.0001 5570 IF B1<=180 THEN 2000 5580 B1=B1-360 5590 GOTO 2000 5600 REM PHASER FEEDER 5605 IF FNP(R,B1,A9)<.4 THEN 5620 5610 IF ABS(B1-90)>=ABS(B-90)-20 THEN 7110 5620 R=R+Y 5630 B1=360*(RND-.5) 5640 GOTO 2000 5650 REM P.T. FEEDER 5655 IF R<300 THEN 5750 5657 IF R>700 THEN 5700 5660 IF ABS(B1-90)>=ABS(B-90)-20 THEN 6920 5670 GOTO 5620 5700 REM MOVE CLOSER TO US 5710 GOSUB 6660 5720 R=ABS(R+Y) 5730 GOTO 2000 5750 REM MOVE AWAY FROM US 5760 GOSUB 6730 5770 R=ABS(R-Y) 5780 GOTO 2000 5800 REM WARP CLOSER TO US 5810 GOSUB 6780 5820 R=ABS(R+2*Y) 5830 GOTO 2000 5850 REM WARP AWAY FROM US 5860 GOSUB 6850 5870 R=ABS(R-2*Y) 5880 GOTO 2000 5980 REM TELL ABOUT ANY NEW LOSSES 5990 IF H1<6 THEN 6300 6000 T=H1-V 6010 IF ABS(T-6)<.1 THEN 6050 6020 IF ABS(H1-6.25)>.3 THEN 6050 6030 PRINT "CHEKOV: REAR PHASER DEAD, SIR." 6040 GOTO 6300 6050 IF ABS(T-7)<.1 THEN 6090 6060 IF ABS(H1-7.25)>.3 THEN 6090 6070 PRINT "CHEKOV: FORWARD PHASERS DEAD, SIR." 6080 GOTO 6300 6090 IF ABS(T-8)<.1 THEN 6130 6100 IF ABS(H1-8.25)>.3 THEN 6130 6110 PRINT "CHEKOV: REAR PHOTON TORPEDOES DEAD, SIR." 6120 GOTO 6300 6130 IF ABS(T-9)<.1 THEN 6170 6140 IF ABS(H1-9.25)>.3 THEN 6170 6150 PRINT "CHEKOV: FORWARD PHOTON TORPEDOES DEAD, SIR." 6160 GOTO 6300 6170 IF ABS(T-10)<.1 THEN 6200 6180 IF ABS(H1-10.25)>.3 THEN 6200 6190 PRINT "CHEKOV: FIRE REPORTED ON DECK";INT(RND*9)+1;", SIR." 6200 IF ABS(T-11)<.1 THEN 6240 6210 IF ABS(H1-11.25)>.3 THEN 6240 6220 PRINT "CHEKOV: TRANSPORTER AND WARP DRIVE GONE, SIR" 6225 PRINT "UHURA: SIR, ENGINEERING REPORTS THEY'RE ON AUXILIARY" 6226 PRINT " SYSTEMS. SCOTTY SAYS THE PRIMARY CONTROLS ARE" 6227 PRINT " IRREPARABLE." 6230 GOTO 6300 6240 IF ABS(T-12)<.1 THEN 6270 6250 IF ABS(H1-12.25)>.3 THEN 6270 6260 PRINT "CHEKOV: PROBE LAUNCHER GONE, SIR" 6270 IF ABS(T-13)<.1 THEN 6278 6272 IF ABS(H1-13.25)>.3 THEN 6278 6275 PRINT "CHEKOV: PRIMARY LIFE SUPPORT SYSTEMS INOPERATIVE, SIR." 6276 PRINT " EMERGENCY LIFE SUPPORT NOW IN USE." 6278 IF ABS(T-14)<.1 THEN 6300 6280 IF ABS(H1-14.25)>.3 THEN 6300 6290 PRINT "CHEKOV: IMPULSE ENGINES DEAD, SIR." 6295 PRINT "UHURA: SICKBAY REPORTS THEY ARE UNABLE TO TEND TO ANY MORE" 6296 PRINT " WOUNDED, SIR." 6300 IF ABS(T-15)<.1 THEN 6350 6310 IF ABS(H1-15.25)>.3 THEN 6350 6320 PRINT "CHEKOV: THE FIRES BELOWDECKS ARE SPREADING, SIR." 6330 PRINT "UHURA: CAPTAIN, SCOTTY SAYS HE'S CUT OFF IN ENGINEERING AND" 6340 PRINT " DAMAGE CONTROL DOESN'T ACKNOWLEDGE." 6350 IF ABS(T-16)<.1 THEN 6410 6360 IF ABS(H1-16.25)>.3 THEN 6410 6370 PRINT "UHURA: I CAN'T RAISE ANYONE, SIR; THE BRIDGE HAS BEEN ISOLATED." 6380 PRINT "SPOCK: ALTHOUGH THEIR RELIABILITY MUST NOW BE ESTIMATED AT" 6390 PRINT " ";(RND*40);"PER CENT, INSTRUMENTS INDICATE THAT THERE" 6400 PRINT " IS A VACUUM IN DECKS 5, 8 AND 9." 6410 RETURN 6430 REM THE ENEMY IS CRIPPLED; TO DESTROY OR NOT TO DESTROY CHOICE 6440 IF P>0 THEN 2000 6450 P=1 6460 PRINT "SPOCK: THE ";E1$;" SHIP IS COMPLETELY CRIPPLED, SIR." 6470 PRINT " DO YOU WANT THEM TO SURRENDER"; 6480 INPUT A$ 6485 IF A$="" THEN 6480 6490 IF LEFT$(A$,1)="Y" THEN 3120 6500 GOTO 2000 6540 REM OUT OF RANGE 6550 PRINT "SULU: CONTACT WITH THE ";E1$;" VESSEL HAS BEEN BROKEN, SIR." 6560 PRINT C$;": RESUME COURSE FOR ";D$;", MR. SULU." 6570 PRINT "SULU: AYE, SIR." 6580 GOTO 8150 6590 REM ENEMY BLOWS SELF UP 6600 PRINT "SPOCK: SENSORS INDICATE THAT THE ";E2$;" IS OVERLOADING" 6610 PRINT " WHAT REMAINS OF ITS ANTIMATTER PODS, UNDOUBTEDLY" 6620 PRINT " A SUICIDAL MOVE, CAPTAIN. PODS WILL DETONATE" 6630 PRINT " IN 12 SECONDS - 10 9 8 7 6 5 4 3 2 1" 6640 GOTO 7640 6650 REM MOVE SHIPS CLOSER 6660 R=ABS(R-200*(RND+.5)) 6710 RETURN 6720 REM MOVE SHIPS AWAY 6730 R=R+200*(RND+.5) 6760 RETURN 6770 REM WARP SHIPS CLOSER 6780 R=ABS(R-400*(RND+.5)) 6830 RETURN 6840 REM WARP SHIPS AWAY 6850 R=R+400*(RND+.5) 6880 RETURN 6890 REM 6900 REM TELL WHAT THE ENEMY DOES, COMPUTE SUCCESS 6910 REM 6920 REM P.T.'S 7030 PRINT "SPOCK: P.T. INCOMING..."; 7040 P9=(RND*10)+5 7050 P2=P2-P9 7055 IF P2>25 THEN 7060 7257 GOSUB 10400 7060 IF P2>0 THEN 7080 7070 GOSUB 9930 7078 REM ENEMY IS IMPROVED SO PLAYER WILL NOT ALWAYS WIN. 7080 IF RND>FNT(R,B1,A9)*1.25 THEN 7570 7090 IF RND<.375 THEN 7460 7100 GOTO 7300 7110 REM PHASERS 7220 PRINT "SPOCK: PHASER INCOMING..,"; 7230 P9=(RND*10)+5 7240 P2=P2-P9 7245 IF P2>25 THEN 7250 7247 GOSUB 10400 7250 IF P2>0 THEN 7270 7260 GOSUB 9930 7270 IF RND>FNP(R,B1,A9)*1.25 THEN 7570 7280 IF RND<.4 THEN 7460 7290 REM TELL RESULTS, SUBTRACT FROM SHIELDS 7300 V=.5 7310 K=INT(RND*4)+1 7320 IF S=0 THEN 7340 7330 K=S 7340 PRINT " A HIT ON SHIELD #";K;"." 7350 IF S1(K)<=0 THEN 7440 7360 S1(K)=S1(K)-30*V*(RND+.1) 7370 H1=H1+V 7380 GOSUB 5990 7390 IF S1(K)>0 THEN 2000 7400 S1(K)=0 7410 PRINT "SPOCK: SHIELD #";K;"IS GONE."; 7415 PRINT CHR$(7),CHR$(7),CHR$(7),CHR$(7),CHR$(7),CHR$(7) 7420 GOTO 2000 7430 REM WE'RE BLOWN UP 7440 PRINT "COMPUTER: THE ";S$;" HAS BEEN DESTROYED." 7450 GOTO 4850 7460 V=1 7470 K=INT(RND*4)+1 7480 IF S=0 THEN 7500 7490 K=S 7500 PRINT " A DIRECT HIT ON SHIELD #";K;"." 7510 K1=INT(RND*50)+1 7520 K9=K9+K1 7525 IF H1>16 THEN 7350 7530 PRINT "UHURA: ";K1;"CASUALTIES REPORTED ON DECK"; 7540 PRINT INT(RND*9)+1;", SIR." 7550 PRINT "SPOCK: TOTAL CASUALTIES NOW ";K9;", CAPTAIN." 7560 GOTO 7350 7570 REM MISSED... 7580 PRINT "MISSED" 7620 GOTO 2000 7640 REM BLOW ENEMY UP AND DETERMINE IF WE'RE SAFE 7650 Q=200*RND 7660 IF Q<R THEN 7720 7670 PRINT X$;": OH, NO! WE'RE TOO CLOSE!!!" 7680 PRINT 7690 PRINT "COMPUTER: RADIUS OF EXPLOSION: ";Q;" MGM." 7700 PRINT " ";S$;" HAS BEEN DESTROYED." 7710 GOTO 8150 7720 PRINT "SPOCK: ";E1$;" VESSEL DESTROYED." 7730 PRINT " RADIUS OF EXPLOSION: ";Q;" MGM." 7740 GOTO 8150 7750 REM TELL COMMANDS 7760 PRINT 7770 PRINT "SPOCK: THE POSSIBLE COMMANDS ARE DESIGNATED BY" 7780 PRINT " THE FOLLOWING CODE NUMBERS:" 7790 PRINT 7800 PRINT " # COMMAND" 7805 PRINT "== =======================================" 7810 PRINT 7820 PRINT " 1 REPEAT LAST RANGE AND BEARING" 7830 PRINT " 2 FIRE FORWARD PHASERS" 7840 PRINT " 3 FIRE REAR PHASERS" 7850 PRINT " 4 FIRE FORWARD PHOTON TORPEDOES" 7860 PRINT " 5 FIRE REAR PHOTON TORPEDOES" 7870 PRINT " 6 FIRE ANTIMATTER PROBE (LIMIT 10)" 7880 PRINT " 7 CLOSE ON ENEMY VESSEL" 7890 PRINT " 8 MOVE AWAY FROM ENEMY VESSEL" 7900 PRINT " 9 CLOSE AT WARP SPEED" 7910 PRINT "10 MOVE AWAY AT WARP SPEED" 7920 PRINT "11 PUT UP STRONGEST SHIELD" 7930 PRINT "12 180 DEGREES ABOUT (TURN AROUND)" 7940 PRINT "13 FIRING PROBABILITY REPORT" 7950 PRINT "14 TYPE THIS LIST AGAIN" 7960 PRINT "15 DAMAGE REPORT" 7970 PRINT "16 ATTEMPT CORBOMITE BLUFFING MANEUVER" 7980 PRINT "17 LET ENEMY MOVE NEXT" 7990 PRINT "18 ACTIVATE SELF-DESTRUCTION" 8000 PRINT "19 SURRENDER (END GAME)" 8010 PRINT "20 BOARD THE ENEMY SHIP" 8020 PRINT "21 REPEAT WEAPONS RANGES AND ACCURACIES" 8030 PRINT "22 WEAPON POWER BANKS STATUS REPORT" 8035 PRINT "23 ALLOCATE SHIELD STRENGTH TO WEAPON BANKS" 8040 RETURN 8050 REM TELL RANGE AND BEARING 8060 IF I=1 THEN 8100 8070 IF R=R7 THEN 8130 8080 R7=R 8085 A9=180*(RND-.5) 8090 B9=180*(RND-.5) 8092 IF B5>0 THEN 8097 8094 B=360*(RND-.5) 8096 B1=360*(RND-.5) 8097 B5=0 8100 PRINT "SPOCK: RANGE:";R;"MGM., BEARING:";B;"D., ALTITUDE:";B9;"D." 8110 IF R>60 THEN 8130 8120 PRINT "SPOCK: CAPTAIN, WE ARE DANGEROUSLY CLOSE TO THE ";E2$ 8130 RETURN 8140 REM CLOSE IT OUT 8150 PRINT 8160 C$=C9$ 8170 PRINT "COMPUTER: DO YOU WISH TO ATTEMPT ANOTHER BATTLE"; 8190 INPUT A$ 8195 IF A$="" THEN 8190 8200 IF LEFT$(A$,1)="N" THEN 8220 8205 RESTORE 8210 G9=1 8215 GOTO 330 8220 IF A$="NEW" THEN 12000 8280 PRINT 8290 PRINT 8300 PRINT 8310 STOP 8320 REM TELL WEAPON RANGES AND PROBABILITIES 8330 PRINT 8340 PRINT "NOTE: WEAPON RANGES ARE:" 8350 PRINT " PHASERS 0-400 MGM (OPTIMUM 200)" 8360 PRINT " TORPEDOES 300-700 MGM (OPTIMUM 500)" 8370 PRINT " TRANSPORTER 0-1000 MGM" 8380 PRINT " PROBES ALL RANGES" 8390 PRINT 8400 PRINT " WEAPON POWER BANKS CONTAIN 300 UNITS OF ENERGY WHEN THE" 8410 PRINT " ";S$;" LEAVES STARBASE. PHASERS DEPLETE THIS POWER MORE" 8420 PRINT " RAPIDLY THAN PHOTON TORPEDOES. SHIELD POWER MAY BE" 8421 PRINT " ALLOCATED TO WEAPONS POWER BANKS IF THEY ARE IN DANGER" 8422 PRINT " OF DEPLETION. ONCE EMPTY, THEY CANNOT BE RECHARGED." 8430 PRINT 8440 PRINT " PHASERS ARE MORE DEADLY THAN TORPEDOES. PROBES" 8450 PRINT " CAUSE MUCH GREATER DESTRUCTION, BUT SUCCEED ONLY" 8460 PRINT " 7% OF THE TIME (APPROXIMATELY). TORPEDOES AND" 8470 PRINT " PHASERS ARE MORE DEADLY WHEN THE BEARING OF THE" 8480 PRINT " ENEMY IS CLOSE TO 0, 180 AND -180 DEGREES, AND" 8485 PRINT " WHEN THE ALTITUDE IS CLOSE TO 0, 90 AND -90 DEGREES." 8490 PRINT " YOU MAY FIND OUT THE ODDS ON ANY SPECIFIC SHOT" 8520 PRINT " BY ASKING ME FOR A PROBABILITY REPORT. BOARDING" 8510 PRINT " PARTIES SUCCEED 30% OF THE TIME IN TAKING OVER" 8522 PRINT " THE ENEMY SHIP, BUT THE CAPTAIN IS KILLED IF THEY" 8530 PRINT " FAIL. " 8540 RETURN 8550 REM MISTAIE COUNTER 8560 M6=M6+1 8570 IF M6>4 THEN 8750 8580 RETURN 8590 REM PROBE GETS US 8600 PRINT "IT IS HOMING IN ON US." 8610 PRINT C$;": ALL HANDS: BRACE FOR EXPLOSION." 8620 PRINT "SPOCK: ESTIMATED TIME OF IMPACT- IN 12 SECONDS." 8630 PRINT "SPOAK: 10 9 8 7 6 5 4 3 2 1" 8640 V=3 8650 K=INT(RND*4)+1 8660 PRINT "SPOCK: PROBE STRUCK SHIELD #";K 8665 IF H1>16 THEN 7350 8670 PRINT "UHURA: DECKS ";INT(RND*4)+1;" AND ";INT(RND*4)+5;" REPORT "; 8680 K3=INT(RND*60)+1 8690 K2=INT(RND*60)+1 8700 K9=K9+K0+K3 8710 PRINT K1;"AND";K2;"CASUALTIES" 8720 PRINT " RESPECTIVELY, SIR." 8730 PRINT "SPOCK: TOTAL CASUALTIES NOW";K9;", CAPTAIN." 8740 GOTO 7350 8750 REM MUTINY SECTION 8760 PRINT "SPOCK: I'M SORRY, CAPTAIN ";C$;", BUT YOU HAVE SHOWN " 8770 PRINT " GROSS INCOMPETENCE IN YOUR COMMAND OF THIS VESSEL." 8780 PRINT " I HEREBY TAKE COMMAND OF THE ";S$;" AND PLACE YOU" 8790 PRINT " UNDER ARREST." 8800 PRINT C$;": THIS IS MUTINY, MR. SPOCK!" 8810 PRINT "SPOCK: I BELIEVE THAT IS THE CORRECT TERM, SIR. GUARD, TAKE" 8820 PRINT " CAPTAIN ";C$;" TO THE BRIG." 8830 PRINT "GUARD: AYE, SIR" 8840 PRINT "SPOCK: MR. SULU, ESCAPE AT WARP SPEED." 8842 IF H1<11 THEN 8850 8844 PRINT "SULU: SORRY MR. SPOCK, THE WARP DRIVE ENGINES ARE OUT." 8845 PRINT "SPOCK: HAVE MR. SCOTT BEGIN REPAIRS IMEDEATELY. AND," 8846 PRINT " MAKE FOR OUR DESTINATION UNDER FULL IMPULSE POWER." 8850 PRINT "SULU: AYE, SIR." 8870 C$="SPOCK" 8880 GOTO 6540 8890 REM ENEMY ANTIMATTER PROBE 8900 X2=X2+1 8930 PRINT "SPOCK: PROBE INCOMING..."; 8940 R9=RND 8950 IF R9<.07135 THEN 8600 8960 PRINT "MISSED BY";(R9-.07135)*100;"MGM, SIR." 8970 IF (R9-.07135)>.05 THEN 8990 8980 PRINT "CHEKOV: THAT WAS ALMOST TOO CLOSE, SIR." 8990 GOTO 2000 9000 REM ENEMY BOARDS US 9020 PRINT "SPOCK: SHIPS SENSORS INDICATE THAT A ";E1$;" PARTY HAS JUST" 9030 PRINT " BEAMED ABOARD, SIR." 9040 PRINT E3$;": I THINK WE CAN SETTLE THIS MATTER ON A MORE" 9050 PRINT " PERSONAL SCALE, CAPTAIN ";C$ 9060 PRINT C$;": SHOOT WITH PHASERS ON KILL!" 9070 IF RND>.5 THEN 9130 9080 PRINT "SPOCK: I BELIEVE THE INTRUDERS ARE ALL DEAD, SIR." 9090 PRINT C$;": I THINK THEY'LL CHOOSE TO ESCAPE NOW THAT ";E3$;" IS" 9100 PRINT " DEAD." 9110 PRINT "SPOCK: A LOGICAL CONCLUSION, CAPTAIN." 9120 GOTO 6540 9130 PRINT E3$;": THEY'RE ALL DEAD...THE ";S$;" IS OURS!" 9140 PRINT " GRUTAL, TURN OFF ALL LIFE SUPPORT; WE'LL BEAM BACK TO" 9150 PRINT " THE ";E2$;" AND PUT A TRACTOR BEAM ON THE ";S$;" TO" 9160 PRINT " TAKE IT BACK TO ";E1$;" HEADQUARTERS FOR CAREFUL" 9170 PRINT " EXAMINATION." 9180 PRINT "GRUTAL: AYE, CAPTAIN." 9190 GOTO 8150 9200 REM WE BOARD THEM 9210 IF H1>10 THEN 9420 9220 IF R>1000 THEN 9460 9230 PRINT "SPOCK: AYE, SIR" 9240 PRINT C$;": SCOTTY, CHEKOV COME WITH ME." 9250 PRINT "SPOCK: IT APPEARS, GENTLEMEN, AS IF WE ARE GOING TO HAVE" 9260 PRINT " TO, AS YOU HUMANS PUT IT, WAIT IT OUT." 9270 FOR I=1 TO 3 9280 PRINT " " 9290 NEXT I 9300 IF RND>.7 THEN 9340 9310 PRINT E3$;": YOU WERE WAITING TO HEAR FROM YOUR CAPTAIN?" 9320 PRINT "UHURA: OH MY GOD..." 9330 GOTO 8840 9340 PRINT C$;": ";E3$;" IS DEAD AND THE ";E2$;" IS OURS." 9350 PRINT "UHURA: THANK GOD..." 9360 PRINT C$;": WE'LL BE BEAMING BACK TO THE ";S$;" SHORTLY. THE" 9370 PRINT " ";E1$;"S ARE SAFELY LOCKED BEHIND THE CRASH BULKHEADS." 9380 PRINT "SPOCK: AYE, SIR. THE CREW IS HAPPY TO HEAR YOU'RE SAFE." 9390 PRINT C$;": THANK-YOU, MR. SPOCK. CARRY ON." 9400 PRINT "SPOCK: AYE, SIR." 9410 GOTO 8150 9415 REM TRANSPORTER DEAD 9420 GOSUB 8550 9430 PRINT "SPOCK: I'M SORRY, CAPTAIN, BUT THE TRANSPORTER IS DEAD." 9440 GOTO 2000 9450 REM TELL WE'RE OUT OF WEAPON RANGE 9460 PRINT X$;": THE ";E2$;" IS OUT OF TRANSPORTER RANGE, SIR." 9470 GOSUB 8550 9480 GOTO 5140 9490 PRINT X$;": THE ";E2$;" IS OUT OF THAT WEAPON'S RANGE, SIR." 9500 GOSUB 8550 9510 GOTO 5140 9520 REM ADDENDA OF DESTINATIONS 9530 PRINT " IN ORDER TO RESCUE COLONISTS UNDER HEAVY ATTACK BY" 9540 PRINT " ";E1$;" BATTLE CRUISERS." 9550 GOTO 1570 9560 PRINT " WITH A CARGO OF VITAL SERUM TO COMBAT AN EPIDEMIC OF" 9570 PRINT " RIGELLIAN FEVER THERE." 9580 GOTO 1570 9590 PRINT " TO SECURE DILITHIUM MINING RIGHTS FOR THE FEDERATION." 9600 GOTO 1570 9610 PRINT " WITH THE NEW FEDERATION AMBASSADOR TO THAT PLANET." 9620 GOTO 1570 9630 PRINT " FOR ASTROPHYSICAL RESEARCH ON QUASARS IN THAT AREA." 9640 GOTO 1570 9650 REM TELL ABOUT NEW ENEMY LOSSES 9660 IF H2<=5.5 THEN 9870 9670 IF H2>10 THEN 9870 9675 IF H2>6.9 THEN 9725 9680 IF H9>0 THEN 9720 9690 H9=1 9700 PRINT "SPOCK: ENEMY REAR PHASERS DEAD, SIR." 9710 RETURN 9720 IF H2<7 THEN 9870 9725 IF H2>7.9 THEN 9775 9730 IF H9>1 THEN 9770 9740 H9=2 9750 PRINT "SPOCK: ENEMY FORWARD PHASERS DEAD, SIR." 9760 RETURN 9770 IF H2<8 THEN 9870 9775 IF H2>8.9 THEN 9830 9780 IF H9>2 THEN 9820 9790 H9=3 9800 PRINT "SPOCK: ENEMY REAR P.T.'S DEAD, SIR." 9810 RETURN 9820 IF H2<9 THEN 9870 9830 IF H9>3 THEN 9870 9840 H9=4 9850 PRINT "SPOCK: ENEMY FORWARD P.T.'S DEAD, SIR; REQUEST DAMAGE" 9860 PRINT " REPORT FOR ALL FUTURE ENEMY DAMAGE." 9870 RETURN 9880 REM WEAPONS BRIEFING FEEDER 9890 PRINT "SPOCK: WEAPON RANGES AND ACCURACIES ARE AS FOLLOWS:" 9900 PRINT 9910 GOSUB 8350 9920 GOTO 2000 9930 REM ENEMY WEAPON POWER BANKS DEPLETED 9940 H2=9 9950 P2=0 9960 PRINT "SPOCK: SENSORS INDICATE THAT THE ";E2$;"'S" 9970 PRINT " WEAPONS POWER BANKS ARE EMPTY, CAPTAIN. ALL" 9980 PRINT " ENEMY PHASERS AND PHOTON TORPEDOES ARE DEAD." 9990 RETURN 10000 REM OUR WEAPONS POWER BANKS DEPLETED 10010 H1=9 10020 P1=0 10030 PRINT "SPOCK: CAPTAIN, OUR WEAPONS POWER BANKS ARE EMPTY. ALL" 10242 PRINT " PHASERS AND PHOTON TORPEDOES ARE DEAD." 10050 RETURN 10060 REM WEAPON POWER BANKS STATUS REPORT 10070 PRINT "SPOCK: ";P1;"UNITS REMAIN,";P1/3;"% OF TOTAL." 10080 GOTO 2000 10100 REM SHIELD POWER TO WEAPONS BANKS 10105 IF H1>8.9 THEN 10390 10110 PRINT "SULU: WHICH OPTION, CAPTAIN: 1) ALL SHIELDS EQUALLY" 10112 PRINT " DRAINED, 2) A CHOSEN SHIELD DEPLETED"; 10120 INPUT W 10130 IF W>2 THEN 10110 10140 IF W<1 THEN 10110 10150 IF W>1 THEN 10300 10155 REM ALL SHIELDS DRAINED 10160 PRINT "SULU: HOW MANY UNITS TOTAL"; 10170 INPUT W1 10180 FOR I=1 TO 4 10190 IF W1/4>S1(I) THEN 10210 10200 NEXT I 10205 GOTO 10240 10210 PRINT "SULU: THE SHIELDS DO NOT HAVE THAT MUCH POWER, SIR." 10220 GOTO 10160 10240 FOR I=1 TO 4 10250 S1(I)=S1(I)-W1/4 10260 NEXT I 10270 P1=P1+W1 10280 PRINT "SPOCK: ";P1;"UNITS NOW AVAILABLE TO WEAPONS, CAPTAIN." 10290 GOTO 1980 10295 REM ONE SHIELD DRAINED 10300 PRINT "SULU: SHIELD NUMBER"; 10310 INPUT S9 10315 IF S9>4 THEN 10300 10320 PRINT "SULU: NUMBER OF UNITS"; 10330 INPUT W1 10340 IF S1(S9)<W1 THEN 10370 10350 S1(S9)=S1(S9)-W1 10360 GOTO 10270 10370 PRINT "SULU: THAT SHIELD CONTAINS INSUFFICIENT POWER, SIR." 10380 GOTO 10300 10390 PRINT "SULU: I'M SORRY, SIR, BUT THE WEAPONS POWER BANKS ARE" 10392 PRINT " EMPTY; THEY CANNOT BE RECHARGED." 10395 GOTO 1980 10400 REM ENEMY SHIELDS TO WEAPONS POWER TRANSFER 10405 IF H1>11.9 THEN 10440 10410 FOR I=1 TO 4 10420 IF S2(I)<35 THEN 10480 10430 NEXT I 10440 FOR I=1 TO 4 10450 S2(I)=S2(I)-5 10460 NEXT I 10470 P2=P2+20 10480 RETURN 10995 REM TELL ABOUT MODIFICATIONS 11000 PRINT "SPOCK: ALL 3 DIMENSIONS NOW DETERMINE WEAPON ACCURACIES;" 11010 PRINT " ALTITUDE IS OPTIMAL AT 0, 90 AND -90 DEGREES. NO" 11020 PRINT " FURTHER ASTEROIDS WILL BE ENCOUNTRED. ENEMY" 11030 PRINT " STRATEGY MAY BE SLIGHTLY DIFFERENT." 11040 PRINT " CODE WORDS MAY NO LONGER BE USED; ONLY NUMBERS" 11050 PRINT " ARE ACCEPTED. SHIELD POWER MAY BE ALLOCATED TO WEAPONS" 11060 PRINT " BANKS IF THEY ARE IN DANGER OF DEPLETION; ONCE EMPTY," 11070 PRINT " THEY CANNOT BE RECHARGED." 11099 RETURN 12000 RESTORE 12002 RANDOMIZE 12004 FOR L=1 TO 6 12006 PRINT 12008 NEXT L 12009 G9=G=0 12010 GOTO 330 64000 REM 64001 REM ++++++++++++++++++++++++++++++++++++++++++ 64002 REM + + 64003 REM + LIST OF PROGRAM VARIABLES + 64004 REM + + 64005 REM ++++++++++++++++++++++++++++++++++++++++++ 64006 REM 64010 REM A$ YES/NO INPUT 64020 REM C$ OUR CAPTAIN 64040 REM C9$ HOLDER FOR OUR CAPTAIN 64050 REM D$ DESTINATION 64060 REM E1$ ENEMY NATION 64070 REM E2$ ENEMY VESSEL 64080 REM E3$ ENEMY CAPTAIN 64090 REM K7$ ENEMY NATIONS ARRAY 64100 REM K8$ ENEMY VESSELS ARRAY 64110 REM K9$ ENEMY CAPTAINS ARRAY 64120 REM L$ DESTINATION ARRAY 64140 REM N$ OUR SHIPS ARRAY 64150 REM O$ COMMAND FEEDBACK ARRAY 64160 REM S$ OUR SHIP 64165 REM V$ VERSION OF PROGRAM 64170 REM X$ HELMSMAN (CHEKOV OR SULU) 64200 REM 64205 REM A9 ENEMY ALTITUDE 64210 REM B BEARING 64220 REM B1 BEARING FOR ENEMY SHIP 64225 REM B5 SKIP BEARING CHANGE FLAG 64230 REM B9 OUR ALTITUDE 64240 REM E ENEMY DAMAGE COMPOSITE 64250 REM G CORBOMITE COUNTER 64255 REM G9 GAME # COUNTER 64260 REM H1 OUR DAMAGE COUNTER 64270 REM H2 ENEMY DAMAGE COUNTER 64275 REM H9 ENEMY DAMAGE PRINTOUT COUNTER 64280 REM J SHIELD # HOLDER 64290 REM K SHIELD # HOLDER 64300 REM K1 SHIELD # HOLDER 64307 REM K2 CASUALTY HOLDER 64308 REM K3 CASUALTY HOLDER 64309 REM K9 CASUALTY COUNTER 64310 REM M5 VECTOR ERROR COUNTER 64320 REM M6 MISTAKE COUNTER 64330 REM P DESTROY CHOICE COUNTER 64331 REM P1 OUR WEAPON POWER BANKS 64332 REM P2 ENEMY WEAPON POWER BANKS 64339 REM P9 RND HOLDER 64340 REM Q RADIUS OF SHIP EXPLOSION 64350 REM R RANGE 64360 REM R7 PREVIOUS RANGE HOLDER 64370 REM R9 RND HOLDER 64380 REM S SHIELD # HOLDER 64390 REM S1(I) OUR SHIELDS 64400 REM S2(I) ENEMY'S SHIELDS 64405 REM S9 SHIELD DRAINED FOR WEAPONS 64410 REM T HOLDER OF PREVIOUS H1 64415 REM U OUR DAMAGE COMPOSITE 64420 REM V VALUE OF HIT 64424 REM W SHIELD DRAIN OPTION 64425 REM W1 POWER FROM SHIELDS TO WEAPONS 64430 REM X OUR PROBE COUNTER 64440 REM X2 ENEMY PROBE COUNTER 64450 REM Y RND POWER FACTOR 64460 REM Z4 RND HOLDER 64999 END [/spoiler] | labelminimizesubject |